# ferreus_orbit Plugins for HPE "CL2800 Gen10"

fo_get_sorted_name(){
  local ata=$(echo $DEVPATH | cut -d/ -f5| awk -F'ata' '{print $2}')
  local id=$(( ${ata} - 1 ))

  if [ -z "$MAXILIUM_ARG_to_fo_name" ]; then
    echo sd$(fo_get_dev_letter ${id})
    exit 0
  else
    echo "Disk${id}"
    exit 0
  fi
}

get_dispo(){
  echo 'HDD disposition (Front Panel):'
  printf -- "_%.s" $(seq 1 97);echo
  local D0=$(fo_get_name_by_bus "scsi@0:0.0.0" 23); local F0=$(fo_get_field_by_bus "scsi@0:0.0.0" 23)
  local D1=$(fo_get_name_by_bus "scsi@1:0.0.0" 23); local F1=$(fo_get_field_by_bus "scsi@1:0.0.0" 23)
  local D2=$(fo_get_name_by_bus "scsi@2:0.0.0" 23); local F2=$(fo_get_field_by_bus "scsi@2:0.0.0" 23)
  local D3=$(fo_get_name_by_bus "scsi@3:0.0.0" 23); local F3=$(fo_get_field_by_bus "scsi@3:0.0.0" 23)
  local D4=$(fo_get_name_by_bus "scsi@6:0.0.0" 23); local F4=$(fo_get_field_by_bus "scsi@6:0.0.0" 23)
  local D5=$(fo_get_name_by_bus "scsi@7:0.0.0" 23); local F5=$(fo_get_field_by_bus "scsi@7:0.0.0" 23)
  local D6=$(fo_get_name_by_bus "scsi@8:0.0.0" 23); local F6=$(fo_get_field_by_bus "scsi@8:0.0.0" 23)
  local D7=$(fo_get_name_by_bus "scsi@9:0.0.0" 23); local F7=$(fo_get_field_by_bus "scsi@9:0.0.0" 23)
  local D8=$(fo_get_name_by_bus "scsi@10:0.0.0" 23); local F8=$(fo_get_field_by_bus "scsi@10:0.0.0" 23)
  local D9=$(fo_get_name_by_bus "scsi@11:0.0.0" 23); local F9=$(fo_get_field_by_bus "scsi@11:0.0.0" 23)
  local D10=$(fo_get_name_by_bus "scsi@12:0.0.0" 23); local F10=$(fo_get_field_by_bus "scsi@12:0.0.0" 23)
  local D11=$(fo_get_name_by_bus "scsi@13:0.0.0" 23); local F11=$(fo_get_field_by_bus "scsi@13:0.0.0" 23)
  printf "|${D0}|${D1}|${D2}|${D3}|\n"
  printf "|${F0}|${F1}|${F2}|${F3}|\n"
  printf "|-----------------------|-----------------------|-----------------------|-----------------------|\n"
  printf "|${D4}|${D5}|${D6}|${D7}|\n"
  printf "|${F4}|${F5}|${F6}|${F7}|\n"
  printf "|-----------------------|-----------------------|-----------------------|-----------------------|\n"
  printf "|${D8}|${D9}|${D10}|${D11}|\n"
  printf "|${F8}|${F9}|${F10}|${F11}|\n"
  printf -- "-%.s" $(seq 1 97);echo

  echo "Sometimes, with inverted cabling:"
  printf -- "_%.s" $(seq 1 97);echo
  printf "|${D4}|${D5}|${D6}|${D7}|\n"
  printf "|${F4}|${F5}|${F6}|${F7}|\n"
  printf "|-----------------------|-----------------------|-----------------------|-----------------------|\n"
  printf "|${D8}|${D9}|${D10}|${D11}|\n"
  printf "|${F8}|${F9}|${F10}|${F11}|\n"
  printf "|-----------------------|-----------------------|-----------------------|-----------------------|\n"
  printf "|${D0}|${D1}|${D2}|${D3}|\n"
  printf "|${F0}|${F1}|${F2}|${F3}|\n"
  printf -- "-%.s" $(seq 1 97);echo
 
# Rear Panel:
  echo;echo 'System HDD (Rear Panel):'
  printf -- "_%.s" $(seq 1 25);echo
  local D12=$(fo_get_name_by_bus "scsi@4:0.0.0" 23); local F12=$(fo_get_field_by_bus "scsi@4:0.0.0" 23)
  local D13=$(fo_get_name_by_bus "scsi@5:0.0.0" 23); local F13=$(fo_get_field_by_bus "scsi@5:0.0.0" 23)
  printf "|${D12}|\n|${F12}|\n"
  printf -- "-%.s" $(seq 1 25);echo
  printf "|${D13}|\n|${F13}|\n"
  printf -- "-%.s" $(seq 1 25);echo
}
